package com.ruoyi.system.api.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 供应商供应样品管理对象 pcm_supplier_sample_management
 * 
 * @author ruoyi
 * @date 2023-11-29
 */
public class PcmSupplierSampleManagement extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 供应商供应样品管理ID */
    private Long supplierSampleManagementID;

    /** 供应商ID外键 */
    @Excel(name = "供应商ID外键")
    private Long supplierID;

    /** 供应商全称 */
    @Excel(name = "供应商全称")
    private String supplierFullName;

    /** 样品名称 */
    @Excel(name = "样品名称")
    private String sampleFullName;

    /** 样品类型 */
    @Excel(name = "样品类型")
    private Integer sampleType;

    /** 样品图片 */
    @Excel(name = "样品图片")
    private String sampleImage;

    /** 邮寄日期 */
    @Excel(name = "邮寄日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime mailingDate;

    /** 邮寄单号 */
    @Excel(name = "邮寄单号")
    private String mailingNumber;

    /** 是否签收 */
    @Excel(name = "是否签收")
    private Integer isSign;

    /** 样品结果 */
    @Excel(name = "样品结果")
    private Integer sampleResults;

    /** 提交人 */
    @Excel(name = "提交人")
    private Long userId;

    /** 提交时间 */
    @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime submissionTime;

    /** 更新时间 */
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updatedTime;

    /** 流程状态 */
    @Excel(name = "流程状态")
    private Integer processStatus;

    /** 当前节点 */
    @Excel(name = "当前节点")
    private String  currentNode;

    /** 当前负责人 */
    @Excel(name = "当前负责人")
    private Long personInCharge;

    private List<SysUser> sysUserList;

    private List<SysDept> sysDeptList;


    public Long getSupplierSampleManagementID() {
        return supplierSampleManagementID;
    }

    public void setSupplierSampleManagementID(Long supplierSampleManagementID) {
        this.supplierSampleManagementID = supplierSampleManagementID;
    }

    public Long getSupplierID() {
        return supplierID;
    }

    public void setSupplierID(Long supplierID) {
        this.supplierID = supplierID;
    }

    public String getSupplierFullName() {
        return supplierFullName;
    }

    public void setSupplierFullName(String supplierFullName) {
        this.supplierFullName = supplierFullName;
    }

    public String getSampleFullName() {
        return sampleFullName;
    }

    public void setSampleFullName(String sampleFullName) {
        this.sampleFullName = sampleFullName;
    }

    public Integer getSampleType() {
        return sampleType;
    }

    public void setSampleType(Integer sampleType) {
        this.sampleType = sampleType;
    }

    public String getSampleImage() {
        return sampleImage;
    }

    public void setSampleImage(String sampleImage) {
        this.sampleImage = sampleImage;
    }

    public LocalDateTime getMailingDate() {
        return mailingDate;
    }

    public void setMailingDate(LocalDateTime mailingDate) {
        this.mailingDate = mailingDate;
    }

    public String getMailingNumber() {
        return mailingNumber;
    }

    public void setMailingNumber(String mailingNumber) {
        this.mailingNumber = mailingNumber;
    }

    public Integer getIsSign() {
        return isSign;
    }

    public void setIsSign(Integer isSign) {
        this.isSign = isSign;
    }

    public Integer getSampleResults() {
        return sampleResults;
    }

    public void setSampleResults(Integer sampleResults) {
        this.sampleResults = sampleResults;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public LocalDateTime getSubmissionTime() {
        return submissionTime;
    }

    public void setSubmissionTime(LocalDateTime submissionTime) {
        this.submissionTime = submissionTime;
    }

    public LocalDateTime getUpdatedTime(LocalDateTime defaultTime) {
        return updatedTime;
    }

    public void setUpdatedTime(LocalDateTime updatedTime) {
        this.updatedTime = updatedTime;
    }

    public Integer getProcessStatus() {
        return processStatus;
    }

    public void setProcessStatus(Integer processStatus) {
        this.processStatus = processStatus;
    }

    public String getCurrentNode() {
        return currentNode;
    }

    public void setCurrentNode(String currentNode) {
        this.currentNode = currentNode;
    }

    public Long getPersonInCharge() {
        return personInCharge;
    }

    public void setPersonInCharge(Long personInCharge) {
        this.personInCharge = personInCharge;
    }

    public List<SysUser> getSysUserList() {
        return sysUserList;
    }

    public void setSysUserList(List<SysUser> sysUserList) {
        this.sysUserList = sysUserList;
    }

    public List<SysDept> getSysDeptList() {
        return sysDeptList;
    }

    public void setSysDeptList(List<SysDept> sysDeptList) {
        this.sysDeptList = sysDeptList;
    }

    @Override
    public String toString() {
        return "PcmSupplierSampleManagement{" +
                "supplierSampleManagementID=" + supplierSampleManagementID +
                ", supplierID=" + supplierID +
                ", supplierFullName='" + supplierFullName + '\'' +
                ", sampleFullName='" + sampleFullName + '\'' +
                ", sampleType=" + sampleType +
                ", sampleImage='" + sampleImage + '\'' +
                ", mailingDate=" + mailingDate +
                ", mailingNumber='" + mailingNumber + '\'' +
                ", isSign=" + isSign +
                ", sampleResults=" + sampleResults +
                ", userId=" + userId +
                ", submissionTime=" + submissionTime +
                ", updatedTime=" + updatedTime +
                ", processStatus=" + processStatus +
                ", currentNode=" + currentNode +
                ", personInCharge=" + personInCharge +
                ", sysUserList=" + sysUserList +
                ", sysDeptList=" + sysDeptList +
                '}';
    }

}
